package com.zoe.onelink.core.web.validation.resolver;

import com.google.common.collect.HashBasedTable;
import com.google.common.collect.Table;
import com.zoe.onelink.util.StrUtil;

/**
 * <p>标题: </p>
 * <p>描述: </p>
 * <p>版权: Copyright (c) 2021</p>
 * <p>公司: 智业软件股份有限公司</p>
 *
 * @version: 1.0
 * @author: ruansheng
 * @date: 2021-12-01
 */
public class ValidationFieldInfoManager {

    /**
     * Row=全类名 , Col=字段名 , Value=描述
     */
    private static final Table<String, String, String> FIELD_INFO_TABLE = HashBasedTable.create();

    /**
     * 获取字段描述
     *
     * @param className 类名(带包路径)
     * @param fieldName 字段名
     * @param fieldDesc 字段描述
     */
    public static void putFieldDesc(String className, String fieldName, String fieldDesc) {
        if (StrUtil.hasBlank(className, fieldName, fieldDesc)) {
            return;
        }
        FIELD_INFO_TABLE.put(className, fieldName, fieldDesc);
    }

    /**
     * 获取字段描述
     *
     * @param className 类名(带包路径)
     * @param fieldName 字段名
     * @return 字段描述
     */
    public static String getFieldDesc(String className, String fieldName) {
        return FIELD_INFO_TABLE.get(className, fieldName);
    }

    /**
     * 获取字段信息数量
     */
    public static int size() {
        return FIELD_INFO_TABLE.size();
    }


}
